#if !defined(_APP_SERIAL)
#define _APP_SERIAL
#include <stdio.h>
#include <termios.h>
#include <app_device.h>
// 波特率枚举
typedef enum
{
    BR_9600 = B9600,
    BR_115200 = B115200
} SerialBaudRate;

// 校验位枚举
typedef enum
{
    Parity_None = 0, // 无校验位
    Parity_Odd = PARENB | PARODD, // 奇校验位
    Parity_Even = PARENB, // 偶校验位
} SerialParity;

// 停止位枚举
typedef enum
{
    StopBit_One = 0, // 1位停止位
    StopBit_Two = CSTOPB, // 2位停止位
} SerialStopBits;


//0  还原初始设置
int app_serial_makeraw(Device *device);


//1   波特率 
int app_serial_set_baudrate(Device *device,SerialBaudRate baudrate);
//2   停止位 
int app_serial_set_stopbits(Device *device,SerialStopBits stopbits);
//3   奇偶校验位
int app_serial_set_parity(Device *device,SerialParity parity);
//4   是否阻塞读取 
int app_serial_set_blocking(Device *device,int blocking);

/**
 * 初始化设备的串口配置
 */
int app_serial_init(Device *device);



#endif // _APP_SERIAL
